/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package descriptorarchivos;

import java.io.IOException;
import java.util.Scanner;

/**
 *
 * @author Ascalero
 */
public class Principal {
    
    public static void main(String [] args)throws InterruptedException{
        int op=0;
        Scanner leer=new Scanner(System.in);
        
        DescriptorArchivos alpha;
        try{
            alpha=DescriptorArchivos.getDesc();
        }catch(IOException e){
            System.out.println("no existe archivo de la BD");
            System.out.println("Se creara uno nuevo");
            alpha= new DescriptorArchivos();
            alpha.saveDesc();
        }catch(ClassNotFoundException a){
            System.out.println("Error al leer la fuente de base de datos\nposiblemente este dañado");
            System.out.println("Se creara uno nuevo");
            alpha= new DescriptorArchivos();
            alpha.saveDesc();
        }
        
        ////Aki se coloca el menu del programa
        //Crear archivo
        ///Leer archivo
        //revisar tablas
        ///desplegar tablas
        ///union
        ///resta
        ///producto cartesiano
        //modificar una tabla: agregar tupla
        
        do{
    		System.out.println("\nDescriptor de archivos\n");
    		System.out.println("MENU\n");
    		System.out.println("1.- Crear tabla");
    		System.out.println("2.- Revisar tablas");
    		System.out.println("3.- Mostrar tablas");
                System.out.println("4.- Union");
                System.out.println("5.- Resta");
                System.out.println("6.- Produto Cartesiano");
                System.out.println("7.- Modificar una tabla");
    		System.out.println("0.- Salir");
    		System.out.print("Opcion: ");
    		op=leer.nextInt();
    		switch(op){
    			case 1:
                            alpha.nuevaTabla();
                            Thread.sleep(2000);
    			break;
                            
    			case 2: 
                            alpha.VerTabla();
                            Thread.sleep(2000);
    			break;
                            
    			case 3:
                            alpha.tablasExistentes();
                            Thread.sleep(2000);
                            
    			break;
                            
    			case 4:
                            alpha.union();
                            Thread.sleep(2000);
    			break;
                            
                        case 5:
                            alpha.diferencia();
                            Thread.sleep(2000);
    			break;
                            
                        case 6:
                        alpha.cartesiano();
                        Thread.sleep(2000);
    			break;
                            
                        case 7:
                        alpha.modificaTabla();
    			break;
                            
    		}    		
    	}while(op!=0);
            
    }  
}
